$(function () {
  // 1. 全选 全不选 功能模块
  // 就是把全选按钮（checkall）的状态赋值给 三个小的按钮（j-checkall）就可以了
  // 事件可以使用change
  $(".checkall").change(function () {
    console.log($(this).prop("checked"))
    $(".j-checkbox, .checkall").prop("checked", $(this).prop("checked"))
    // 全选
    if ($(this).prop("checked")) {
      // 让所有商品添加 check-cart-item 类名
      $(".cart-item").addClass("check-cart-item")
    }
    else {
      // 移除check - cart - item
      $(".cart-item").removeClass("check-cart-item")
    }
  })

  // 2. 如果小复选框被选中的个数等于3 就应该把全选按钮选上 否则全选按钮不选
  $(".j-checkbox").change(function () {
    if ($(".j-checkbox:checked").length == $(".cart-item").length) {
      $(".checkall").prop("checked", true)
    }
    else $(".checkall").prop("checked", false)
    console.log($(".j-checkbox:checked")) // 长度length 是属性

    if ($(this).prop("checked")) {
      // 让当前商品添加 check-cart-item 类名
      $(this).parents(".cart-item").addClass("check-cart-item")
    }
    else {
      $(this).parents(".cart-item").removeClass("check-cart-item")
      // 移除check - cart - item
    }
  })

  // 3. 增减商品数量模块 首先声明一个变量 当我们点击 + 号 （increment），就让这个值++ 然后赋值给文本框
  $(".increment").click(function () {
    // 得到当前兄弟文本框的值
    let n = $(this).siblings(".itxt").val() // val 只能得到表单里面的值
    console.log(n)
    n++
    console.log(n)
    $(this).siblings(".itxt").val(n)
    let price = $(this).parent().parent().siblings(".p-price").text().substr(1)
    console.log(price)
    // $(this).parent().parent().siblings("p-sum").text(n * price)
    // console.log($(this).parent().parent().siblings("p-sum"))
    console.log($(this).parent().parent().siblings(".p-sum"))
    $(this).parent().parent().siblings(".p-sum").text(`￥` + (price * n).toFixed(2))
    get()
  })

  // 减号
  $(".decrement").click(function () {
    // 得到当前兄弟文本框的值
    let n = $(this).siblings(".itxt").val() // val 只能得到表单里面的值
    console.log(n)
    let price = $(this).parent().parent().siblings(".p-price").text().substr(1)
    if (n > 1) n--
    console.log(n)
    $(this).siblings(".itxt").val(n)
    $(this).parent().parent().siblings(".p-sum").text(`￥` + (price * n).toFixed(2))
    get()
  })

  // 小计钱数
  // 4. 用户修改文本框的值 计算小计模块
  $(".itxt").change(function () {
    // 先得到文本框里面的值 乘以 当前单价的值
    let n = $(this).val()
    let price = $(this).parents(".p-num").siblings(".p-price").text().substr(1)
    console.log(price)
    $(this).parents(".p-num").siblings(".p-sum").text("￥" + (n * price).toFixed(2))
    get()
  })

  // 5. 计算总计和总额模块
  function get() {
    console.log($(".p-sum").text())
    console.log($(".p-sum").text().split('￥'))
    arr = $(".p-sum").text().split('￥')
    sum = 0
    $.each(arr, function (i, ele) {
      sum += +ele
      console.log(ele)
    })
    console.log(sum)

    $("em").text("￥" + sum.toFixed(2))

    let count = 0
    $(".itxt").each(function (i, ele) {
      console.log(ele)
      count += +$(ele).val()
    })
    console.log(count)
    $(".amount-sum em").text(count)
  }
  get()


  // 删除
  $(".p-action").click(function () {
    // console.log($(this).parents(".cart-item").index())
    // let n = $(this).parents(".cart-item").index()
    $(this).parents(".cart-item").remove()
    get()

  })

  // 删除选中商品
  $(".remove-batch").click(function () {
    // console.log($(".j-checkbox").length)
    // let arr = $(".j-checkbox")
    // console.log(arr)
    // let price = 0
    // $(".j-checkbox").each(function () {
    //   console.log($(this).prop("checked"))
    //   if ($(this).prop("checked"))
    //     // console.log($(this).parents(".p-checkbox").siblings(".p-sum").text().substr(1))
    //     price += +$(this).parents(".p-checkbox").siblings(".p-sum").text().substr(1)
    //   console.log(`pirce: ${price}`)
    // })
    // console.log(`总价：${+$(".price-sum em").text().substr(1)}`)
    // $(".price-sum em").html(`${(+$(".price-sum em").text().substr(1) - +price).toFixed(2)}`)



    let k = 0
    $(".j-checkbox").each(function (i, ele) {
      if ($(ele).prop("checked")) $(this).parents(".cart-item").remove(), k++
    })

    $(".amount-sum em").html(`${$(".j-checkbox").parents(".cart-item").index() + 1}`)
    // 获得删除的商品 的价格

    if ($(".j-checkbox").length == 0) $(".checkall").prop("checked", false)

    get()


  })

  // 全删
  $(".clear-all").click(function () {
    // $(".j-checkbox").each(function () {
    //   $(this).parents(".cart-item").remove()
    // })

    $(".cart-item").remove()
    get()

  })

})